Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

icache: Add ICACHE management #22

Merged
merged 2 commits into from
Oct 15, 2024
Merged

icache: Add ICACHE management #22

merged 2 commits into from
Oct 15, 2024

Conversation

astapleton
Copy link
Contributor

Add management functions for the ICACHE instruction cache peripheral.

@astapleton astapleton requested a review from richardeoin August 22, 2024 17:49
@astapleton astapleton force-pushed the as/icache branch 2 times, most recently from 51b323e to fe615a1 Compare October 8, 2024 20:53
src/icache.rs Outdated Show resolved Hide resolved
@astapleton
Copy link
Contributor Author

@ryan-summers Ok, I've reworked this API significantly. It removes a lot of the edge cases for behavior when the ICACHE is disabled vs enabled or what mode it is in by having the ICache struct only be valid while the peripheral is enabled. Enabling it in either mode gives you the ICache struct, and disabling the peripheral drops it returning the peripheral struct ICACHE that can then be re-enabled. I also added interrupt enable/disable and servicing methods.

Copy link
Member

@ryan-summers ryan-summers left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That looks much nicer from a design perspective! :)

@astapleton astapleton merged commit 397d98f into master Oct 15, 2024
15 checks passed
@astapleton astapleton deleted the as/icache branch October 15, 2024 17:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants